﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using DTO;
using DAO;
using BUS;

namespace GUI
{
    public partial class Trảsách : UserControl
    {
        public Trảsách()
        {
            InitializeComponent();
        }
        DataTable mvc = new DataTable();

        private void Trảsách_Load(object sender, EventArgs e)
        {
            hienthi();
        }
        void hienthi()
        {
            btnupdate.Enabled = false;
            txtmadocgia.Enabled = false;
            datangayhentra.Enabled = false;
            btntrasach.Enabled = false;
            mvc = DataProvider.GetDataTable("Phieumuon", DataProvider.ketnoi());
            Loadlistview(mvc, lvwPM);
            cbotinhtrang.Items.Add("Đã trả");
            cbotinhtrang.Items.Add("Chưa trả");
            txtmaphieumuon.Enabled = false;
        }

        void Loadlistview(DataTable dt, ListView lv)
        {

            lvwPM.Items.Clear();
            int istt = 0;
            foreach (DataRow dr in dt.Rows)
            {
                istt++;
                ListViewItem lvw = new ListViewItem();
                lvw.Text = istt.ToString();
                lvw.SubItems.Add(dr["Mapm"].ToString());
                lvw.SubItems.Add(dr["MaDG"].ToString());
                lvw.SubItems.Add(dr["Ngayhentra"].ToString());
                lvw.SubItems.Add(dr["Ngaytra"].ToString());
                lvw.SubItems.Add(dr["Tinhtrang"].ToString());
                lvw.ImageIndex = 0;
                lvwPM.Items.Add(lvw);
            }

        }

        private void lvwPM_SelectedIndexChanged(object sender, EventArgs e)
        {
            btntrasach.Enabled = true;
            
            if (lvwPM.SelectedItems.Count > 0)
            {
                ListViewItem lv = lvwPM.SelectedItems[lvwPM.SelectedItems.Count - 1];
                if (lv != null)
                {
                    foreach (ListViewItem lvw in lvwPM.SelectedItems)
                    {
                        txtmaphieumuon.Text = lvw.SubItems[1].Text;
                        txtmadocgia.Text = lvw.SubItems[2].Text;
                        datangayhentra.Text = lvw.SubItems[3].Text;
                        datangaytra.Text = lvw.SubItems[4].Text;
                        cbotinhtrang.Text = lvw.SubItems[5].Text;
                    }
                }
            }
        }

        private void btnTimKiem_Click(object sender, EventArgs e)
        {
            btnupdate.Enabled = true;
            DataSet dsma = TrasachDAO.timkiemphieumuon(Convert.ToInt32(txttimphieumuon.Text), DataProvider.ketnoi());
            int a = 0;
            if (btnTimKiem.Text == "Tìm Kiếm")
            {
                if (txttimphieumuon.Text == "")
                {
                    MessageBox.Show("Vui lòng nhập thông tin cần tìm", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txttimphieumuon.Focus();
                }
                else
                {
                    if (rbtmaphieumuon.Checked == false)
                    {
                        MessageBox.Show("Vui lòng lựa chọn tìm kiếm theo mã sách hoặc tên sách", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                    else
                    {
                        txttimphieumuon.Text = "";
                        lvwPM.Items.Clear();
                        int iSTT = 0;
                        if (rbtmaphieumuon.Checked == true)
                            foreach (DataRow drw in dsma.Tables[0].Rows)
                            {
                                iSTT++;
                                ListViewItem lvwItem = new ListViewItem();
                                lvwItem.Text = iSTT.ToString();
                                lvwItem.SubItems.Add(drw["Mapm"].ToString());
                                lvwItem.SubItems.Add(drw["MaDG"].ToString());

                                lvwItem.SubItems.Add(drw["Ngayhentra"].ToString());
                                lvwItem.SubItems.Add(drw["Ngaytra"].ToString());
                                lvwItem.SubItems.Add(drw["Tinhtrang"].ToString());
                                lvwItem.ImageIndex = 0;
                                lvwPM.Items.Add(lvwItem);
                                a++;
                            }
                    }
                }
            }
        }

        private void btntrasach_Click(object sender, EventArgs e)
        {
             DialogResult d = MessageBox.Show("Bạn có chắc là muốn update  ko ?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
             if (d == DialogResult.Yes)
             {
                 TrasachDTO dto = new TrasachDTO();
                 dto.Mapm = Convert.ToInt32(txtmaphieumuon.Text);
                 dto.Ngaytra = Convert.ToDateTime(datangaytra.Value);
                 dto.Tinhtrang = cbotinhtrang.Text;
                 if (TrasachBUS.trasach(dto)==true)
                 {
                     MessageBox.Show("Trả sách thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     Loadlistview(mvc, lvwPM);
                     lvwPM.Enabled = true;
                     btntrasach.Enabled = false;
                 }
             }
        }

        private void btnupdate_Click(object sender, EventArgs e)
        {
            txtmadocgia.Enabled = true;
            cbotinhtrang.Enabled = true;
            btnupdate.Enabled = false;
            txtmadocgia.Focus(); 
        }

        private void button4_Click(object sender, EventArgs e)
        {
            Application.Exit();

        }

       


    }
}
